package com.hades.xq.miaoshao.service;

import com.hades.xq.miaoshao.error.BusinessException;
import com.hades.xq.miaoshao.service.model.ItemModel;

import java.util.List;

public interface ItemService {

    /**
     *  创建商品
     *
     * @param itemModel
     * @return
     */
    ItemModel createItem(ItemModel itemModel) throws BusinessException;

    /**
     * 商品列表
     *
     * @return
     */
    List<ItemModel> listItem();

    /**
     * 商品详情
     *
     * @param itemId
     * @return
     */
    ItemModel getItemById(Integer itemId);

    /**
     * 库存扣减
     *
     * @param itemId 扣减的商品id
     * @param amount 扣减的数量
     * @return
     */
    boolean decreaseStock(Integer itemId, Integer amount) throws BusinessException;

    /**
     * 创建订单成功之后，销量加
     *
     * @param itemId 商品id
     * @param amount 购买数量
     * @throws BusinessException
     */
    void increaseSales(Integer itemId, Integer amount) throws BusinessException;
}
